package com.dd.cloud.open.req.api;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotEmpty;

/**
 * @author Lx
 * @version 1.0
 * @date 2023/9/11
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class DiagnoseReq extends AuthReq {
    /**
     * 疾病序号 如:ZK_FUB
     */
    @NotEmpty(message = "疾病序号不能为空")
    private String diseaseNo;

    /**
     * 症状ID集合 如:A2,B7,D4
     */
    @NotEmpty(message = "症状ID不能为空")
    private String symptomIds;

    /**
     * 疾病名称 比如:感冒
     */
    @NotEmpty(message = "疾病名称不能为空")
    private String diseaseName;

    /**
     * 症状名称 比如:咳嗽
     */
    @NotEmpty(message = "症状名称不能为空")
    private String symptomNames;

    /**
     * 性别 如:男 ,女
     */
    @NotEmpty(message = "性别不能为空")
    private String sex;

    /**
     * 年龄 如:45
     */
    @NotEmpty(message = "年龄不能为空")
    private String age;

    /**
     * 民族 如:汉族 ,维族
     */
    @NotEmpty(message = "民族不能为空")
    private String nation;

    /**
     * 婚姻状况 如:未婚,已婚
     */
    @NotEmpty(message = "婚姻状况不能为空")
    private String marriage;

    /**
     * 姓名
     */
    private String name;

    /**
     * 联系方式
     */
    private String phone;

    /**
     * 是否需要确认,这个值与nErrorCode配合使用
     * "当:nErrorCode小于0时,此时sResult与sErrorMsg是错误信息;
     * "当值等于-2时需要再次选择病症,无论有无选择病症都会出报告,此时flag值需要传65536;
     * "nErrorCode大于0时,代表需要二次用户确认,sResult是确认提示信息,
     * "如果用户选择“是”则需要把nErrorCode值做为flag参数再次调用此接口.
     */
    private Integer flag;
}